/* Communicator.java
 * 
 * Alfred Olschnoegger
 * 11.06.2008
 */

package technical.communication;

import java.io.IOException;

import technical.deParser.DeParser;
import domain.Game;
import domain.GameObject;
import domain.location.Position;

/**
 * TODO description
 *
 * @date 11.06.2008
 * @author Alfred Olschnoegger
 */

public abstract class Communicator {

	public abstract DeParser LogIn(String username, long key, Game game) throws IOException;

	public abstract DeParser Register(String username, Game game) throws IOException;

	public abstract DeParser getServerInfo() throws IOException;
	
	public abstract DeParser getGames() throws IOException;

	public abstract DeParser getFieldUpdate(String username, Position pos, Game game, int range) throws IOException;

	public abstract DeParser useObject(String username, Position pos, Game game, GameObject object) throws IOException;

	public abstract void close() throws IOException;
	
	public abstract DeParser getHighscore(Game game) throws IOException;
}


// end of Communicator.java
